﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Gwn.Library.MvpVm.Interfaces
{
    /// <summary>
    /// Application controller interface
    /// </summary>
    public interface IApplicationController
    {
        /// <summary>
        /// Gets the presenter list.
        /// </summary>
        /// <returns></returns>
        List<IPresenter> GetPresenterList();
        
        /// <summary>
        /// Activates the view.
        /// </summary>
        /// <param name="viewName">Name of the view.</param>
        void ActivateView(string viewName);
        
        /// <summary>
        /// Activates the view.
        /// </summary>
        /// <param name="viewType">Type of the view.</param>
        void ActivateView(Type viewType);
    }
}
